#ifndef _KEYS_H_
#define _KEYS_H_

#define		EXTENDED	0x100

/*  ------------------- Functional Keys ------------------ */
#define		F1      	(59|EXTENDED)
#define		F2      	(60|EXTENDED)
#define		F3      	(61|EXTENDED)
#define		F4      	(62|EXTENDED)

#define		F5      	(63|EXTENDED)
#define		F6      	(64|EXTENDED)
#define		F7      	(65|EXTENDED)
#define		F8      	(66|EXTENDED)

#define		F9      	(67|EXTENDED)
#define		F10     	(68|EXTENDED)
#define		F11     	(133|EXTENDED)
#define		F12     	(134|EXTENDED)


/*  ---------------CTRL + Functional Keys ----------------- */
#define		Ctrl_F1		(94|EXTENDED)
#define		Ctrl_F2		(95|EXTENDED)
#define		Ctrl_F3		(96|EXTENDED)
#define		Ctrl_F4		(97|EXTENDED)

#define		Ctrl_F5		(98|EXTENDED)
#define		Ctrl_F6		(99|EXTENDED)
#define		Ctrl_F7		(100|EXTENDED)
#define		Ctrl_F8		(101|EXTENDED)

#define		Ctrl_F9		(102|EXTENDED)
#define		Ctrl_F10	(103|EXTENDED)
#define		Ctrl_F11	(137|EXTENDED)
#define		Ctrl_F12	(138|EXTENDED)

/*  --------------ALT + Functional Keys ------------------- */
#define		Alt_F1		(104|EXTENDED)
#define		Alt_F2		(105|EXTENDED)
#define		Alt_F3		(106|EXTENDED)
#define		Alt_F4		(107|EXTENDED)

#define		Alt_F5		(108|EXTENDED)
#define		Alt_F6		(109|EXTENDED)
#define		Alt_F7		(110|EXTENDED)
#define		Alt_F8		(111|EXTENDED)

#define		Alt_F9		(112|EXTENDED)
#define		Alt_F10		(113|EXTENDED)
#define		Alt_F11		(139|EXTENDED)
#define		Alt_F12		(140|EXTENDED)



/*  -----------Shift + Functional Keys -------------------- */
#define		Shift_F1	(84|EXTENDED)
#define		Shift_F2	(85|EXTENDED)
#define		Shift_F3	(86|EXTENDED)
#define		Shift_F4	(87|EXTENDED)

#define		Shift_F5	(88|EXTENDED)
#define		Shift_F6	(89|EXTENDED)
#define		Shift_F7	(90|EXTENDED)
#define		Shift_F8	(91|EXTENDED)

#define		Shift_F9	(92|EXTENDED)
#define		Shift_F10	(93|EXTENDED)
#define		Shift_F11	(13|EXTENDED)
#define		Shift_F12	(13|EXTENDED)



/* -------------------- Arrows keys --------------------------- */
#define		Home		(71|EXTENDED)
#define		End		(79|EXTENDED)
#define		PgUp		(73|EXTENDED)
#define		PgDn		(81|EXTENDED)

#define		Up		(72|EXTENDED)
#define		Down		(80|EXTENDED)
#define		Left		(75|EXTENDED)
#define		Right		(77|EXTENDED)

/* --------------------- Other keys --------------------------- */
#define		Ins		(82|EXTENDED)
#define		Del		(83|EXTENDED)

#define		BS		8
#define		ESC		27
#define		Esc		27
#define		CR		13
#define		Enter		13
#define		Tab		9
#define		Shift_Tab	(15|EXTENDED)
#define		Space		32

#define		Plus		43
#define		Minus		45

#define		Ctrl_BackSlash	28

/* -------------------- Keypad (NumLock ON) ------------------ */
#define		K_0		48
#define		K_1		49
#define		K_2		50
#define		K_3		51
#define		K_4		52
#define		K_5		53
#define		K_6		54
#define		K_7		55
#define		K_8		56
#define		K_9		57

/* ------------------------ Ctrl + keypade -------------------- */
#define		Ctrl_Home	(119|EXTENDED)
#define		Ctrl_Up		(141|EXTENDED)
#define		Ctrl_PgUp	(132|EXTENDED)
#define		Ctrl_Right	(116|EXTENDED)
#define		Ctrl_PgDn	(118|EXTENDED)
#define		Ctrl_Down	(145|EXTENDED)
#define		Ctrl_End	(117|EXTENDED)
#define		Ctrl_Left	(115|EXTENDED)

#endif _KEYS_H_